<?php
/**
 * Created by PhpStorm.
 * User: zw215
 * Date: 2019/3/23
 * Time: 17:16
 */

namespace App\Exceptions;

use Exception;

class BaseException extends Exception
{
//以下定义的变量 在全局异常处理类中会用到
    public $status = 0;//服务器状态码 0代表异常，1代表正确响应
    public $code = 400;//Http状态码 404 .402
    public $msg = "param error";//错误具体信息
    public $errorCode = -1;//自定义错误码

    /**
     * 构造函数，接收一个关联数组
     * @param array $params 关联数组只应包含code、msg和errorCode，且不应该是空值
     */
    public function __construct($params = [])
    {
        if (!is_array($params)) {
            return;
        }
        if (array_key_exists('code', $params)) {
            $this->code = $params['code'];//将传递过来的值赋值给成员变量（java里的说法）
        }
        if (array_key_exists('msg', $params)) {
            $this->msg = $params['msg'];
        }
        if (array_key_exists('errorCode', $params)) {
            $this->errorCode = $params['errorCode'];
        }
        if (array_key_exists('status', $params)) {
            $this->errorCode = $params['status'];
        }
    }
}